package org.yang.admin.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.yang.admin.dao.entity.GroupDO;
import org.yang.admin.dto.req.ShortLinkGroupSaveReqDTO;
import org.yang.admin.dto.req.ShortLinkGroupSortReqDTO;
import org.yang.admin.dto.req.ShortLinkGroupUpdateReqDTO;
import org.yang.admin.dto.resp.ShortLinkGroupRespDTO;

import java.util.List;

public interface GroupService extends IService<GroupDO> {

    /**
     * 保存分组
     * @param requestParam 保存请求参数
     */
    void save(ShortLinkGroupSaveReqDTO requestParam);

    /**
     * 分组列表
     * @return
     */
    List<ShortLinkGroupRespDTO> groupList();

    /**
     * 更新分组
     * @param requestParam 更新请求参数
     */
    void updateGroup(ShortLinkGroupUpdateReqDTO requestParam);

    /**
     * 删除分组
     * @param gid
     */
    void deleteGroup(String gid);

    /**
     * 对分组进行排序
     */
    void sort(List<ShortLinkGroupSortReqDTO> requestParam);
}
